package com.zbkj.crmeb.front.request;

import java.io.Serializable;

import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Author: Rede
 * @DateTime: 2024-10-01 17:09
 * @Description: 使用企业网银支付时，付款方连连账户开户名称需要与银行开户名称一致，否则会退款。
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="PayeeInfoRequest 对象")
public class PayerInfoRequest implements Serializable {

    private static final long serialVersionUID = 6331677495315851737L;

    /** 必传:
     * 付款方标识。
     * 付款方为用户时设置user_id 。
     * 付款方为商户时设置平台商户号。
     */
    private String payer_id;

    /** 必传:
     * 付款方类型。
     * 用户：USER
     * 平台商户：MERCHANT
     */
    private String payer_type;

    /** 支付密码。6-12位的字母、数字，不可以是连续或者重复的数字和字母，正则：^[a-zA-Z0-9]{6,12}$。完整校验代码示例
     * 通过密码控件加密成密文传输。
     */
    private String password;

    /**
     * 密码随机因子key。随机因子获取接口返回，或弹框控件回调函数返回。
     */
    private String random_key;

    /**
     * 付款方式。详见付款方式列表
     */
    private String method;

    /**
     * 付款金额。付款方式对应的金额，单位为元，精确到小数点后两位。
     * 所有的付款方式金额相加必须和订单总金额一致。
     */
    private String amount;

    /**
     * 付款银行账号，付款方式为银行卡支付和企业网银B2B支付方式时返回，脱敏返回：卡号前六后四
     */
    private String acctno;

    /**
     * 付款银行户名，付款方式为银行卡支付和企业网银B2B支付方式时返回
     */
    private String acctname;

    /**
     * 渠道付款方标识
     */
    private String chnl_payer_id;

}
